public class {{projectName}}Client {
{{#authMethods}}
    public var {{nameInPascalCase}}: String?;
{{/authMethods}}
    public var basePath: String
{{#apiInfo}}
{{#apis}}
    public lazy var {{classNameCamelCase}}: {{classname}} = { return {{classname}}(client: self) }()
{{/apis}}
{{/apiInfo}}

    public init(
{{#authMethods}}
        {{nameInPascalCase}}: String?,
{{/authMethods}}
        basePath: String = "{{{basePath}}}"
    ) {
{{#authMethods}}
        self.{{nameInPascalCase}} = {{nameInPascalCase}}
{{/authMethods}}
        self.basePath = basePath
    }

}
